#include <iostream>
#include <vector>

#include "TestCaseGenerator.h"

using namespace std;

void Swap(int &a, int &b)
{
	int tmp = a;
	a = b;
	b = tmp;
}

void SelectionSort(vector<int> &array)
{
	if (array.size() < 2)
		return;

	int length = array.size();
	for (int i = 0; i < length; i++)
	{
		int minIndex = i;
		for (int j = i+1; j < length; j++)
		{
			if (array[minIndex] > array[j])
				minIndex = j;
		}
		Swap(array[i], array[minIndex]);
	}
}


int main()
{
	shared_ptr<TestCaseGenerator> tcgPtr;

	vector<int> testCaseArray = tcgPtr->GenerateTestCase(5, 0, 10);
	SelectionSort(testCaseArray);

	vector<int> testCaseArray1 = tcgPtr->GenerateTestCase();
	SelectionSort(testCaseArray1);

	

	return 0;
}